home *** CD-ROM | disk | FTP | other *** search
/ Aminet 43 / Aminet 43 (2001)(GTI - Schatztruhe)[!][Jun 2001].iso / Aminet / demo / mag / hLA-AP15.lha / hLA-AP15 / bonus / zdroj.lha / radix.asc < prev    next >
Text File  |  2000-05-01  |  1KB  |  79 lines

  1. ;Trideni metodou Radix
  2.  
  3. N=100
  4. M=9 ;pocet prihradek
  5. Dim pole(N)
  6. Dim pompole(M,N)
  7. Dim poc(M)
  8.  
  9. Statement Vypis{}
  10. SHARED pole(),N
  11. For i=0 To Int(N/10)-1
  12.   For j=1 To 10
  13.     Print pole(i*10+j)," "
  14.   Next j
  15.   NPrint ""
  16. Next i
  17. End Statement
  18.  
  19. Statement Vypis2{}
  20. SHARED pole(),poc(),pompole(),M,N
  21. For i=0 To M
  22.   Print i,"-"
  23.   For j=1 To poc(i)
  24.     Print pompole(i,j),","
  25.   Next j
  26.   NPrint ""
  27. Next i
  28.  
  29. End Statement
  30.  
  31. Statement Vypis3{}
  32. SHARED pole(),N
  33. For i=1 To N
  34.   Print pole(i),","
  35. Next i
  36. a=Edit(2)
  37. End Statement
  38.  
  39. Statement Radix{}
  40. SHARED pole(),pompole(),poc(),N,M
  41.  
  42. For i=0 To 3    ;cyklus pres vsechny rady
  43. ;vybirame prvek po prvku a radime ho do pompole podle cislice na i-tem radu
  44.   For j=0 To M
  45.     poc(j)=0
  46.   Next j
  47.   For j=1 To N
  48.     a=Int((pole(j)-Int(pole(j)/(10^(i+1)))*10^(i+1) )/(10^i))     ;v Blitzu neni celociselny deleni ? - (pole(j) mod (10^(i+1)))
  49.     poc(a)=poc(a)+1
  50.     pompole(a,poc(a))=pole(j)
  51.   Next j
  52. ;Vypis2{}
  53. ;a ted vezmeme vsechny prvky z jednotlivych poli a dame je do jednoho pole
  54.   uk=0
  55.   For j=0 To M
  56.     For k=1 To poc(j)
  57.       uk=uk+1
  58.       pole(uk)=pompole(j,k)
  59.     Next k
  60.   Next j
  61. ;Vypis3{}
  62. Next i
  63. End Statement
  64.  
  65. For i=1 To N
  66.   pole(i)=Int(Rnd(9999))
  67. Next i
  68.  
  69. NPrint "Nesetridene pole:"
  70. Vypis{}
  71. Radix{}
  72. NPrint "Setridne pole"
  73. Vypis{}
  74. a=Edit(2)
  75. End
  76.  
  77.  
  78.  
  79.